package Day12;

/**
 * ----------------------------------------------------------------------------------------------
 * 题目：
 *      给你由 n 个小写字母字符串组成的数组 strs，其中每个字符串长度相等。
 *      这些字符串可以每个一行，排成一个网格。例如，strs = ["abc", "bce", "cae"] 可以排列为：
 *          abc
 *          bce
 *          cae
 *      你需要找出并删除 不是按字典序升序排列的 列。
 *      在上面的例子（下标从 0 开始）中，列 0（'a', 'b', 'c'）和列 2（'c', 'e', 'e'）都是按升序排列的，
 *      而列 1（'b', 'c', 'a'）不是，所以要删除列 1 。
 *      返回你需要删除的列数。
 * ---------------------------------------------------------------------------------------------
 * 示例：
 *      输入：strs = ["cba","daf","ghi"]
 *      输出：1
 *      解释：网格示意如下：
 *          cba
 *          daf
 *          ghi
 *      列 0 和列 2 按升序排列，但列 1 不是，所以只需要删除列 1 。
 * --------------------------------------------------------------------------------------------
 * 方法：
 *      双层循环
 * -------------------------------------------------------------------------------------------
 */
class Solution {
    public static void main(String[] args) {
        String[] strs = new String[]{"cba","daf","ghi"};
        System.out.println(minDeletionSize(strs));
    }
    public static int minDeletionSize(String[] strs) {
        int count=0;
        for(int i=0;i<strs[0].length();++i){
            for(int j=1;j<strs.length;++j){
                if((strs[j].charAt(i)-strs[j-1].charAt(i))<0){
                    count++;
                    break;
                }
            }
        }
        return count;
    }
}